// export comp_engs3 , comp_engs2 , AmericanPerson , Am1_Turret , Am2_Turret ; export function PrepareAmerican ; var am_turret , i , un , b , x1 , y1 , k , l , level , am_depot1 , comp_units , am_depot2 , am_fab , am_lab ; begin
   0: LD_INT 0
   2: PPUSH
   3: PPUSH
   4: PPUSH
   5: PPUSH
   6: PPUSH
   7: PPUSH
   8: PPUSH
   9: PPUSH
  10: PPUSH
  11: PPUSH
  12: PPUSH
  13: PPUSH
  14: PPUSH
  15: PPUSH
  16: PPUSH
// Am1_Turret := FilterUnitsInArea ( STREFA , [ [ f_side , 1 ] , [ f_btype , b_bunker ] ] ) ;
  17: LD_ADDR_EXP 4
  21: PUSH
  22: LD_INT 4
  24: PPUSH
  25: LD_INT 22
  27: PUSH
  28: LD_INT 1
  30: PUSH
  31: EMPTY
  32: LIST
  33: LIST
  34: PUSH
  35: LD_INT 30
  37: PUSH
  38: LD_INT 32
  40: PUSH
  41: EMPTY
  42: LIST
  43: LIST
  44: PUSH
  45: EMPTY
  46: LIST
  47: LIST
  48: PPUSH
  49: CALL_OW 70
  53: ST_TO_ADDR
// Am2_Turret := FilterUnitsInArea ( DUPA , [ [ f_side , 4 ] , [ f_btype , b_bunker ] ] ) ;
  54: LD_ADDR_EXP 5
  58: PUSH
  59: LD_INT 3
  61: PPUSH
  62: LD_INT 22
  64: PUSH
  65: LD_INT 4
  67: PUSH
  68: EMPTY
  69: LIST
  70: LIST
  71: PUSH
  72: LD_INT 30
  74: PUSH
  75: LD_INT 32
  77: PUSH
  78: EMPTY
  79: LIST
  80: LIST
  81: PUSH
  82: EMPTY
  83: LIST
  84: LIST
  85: PPUSH
  86: CALL_OW 70
  90: ST_TO_ADDR
// uc_side = 1 ;
  91: LD_ADDR_OWVAR 20
  95: PUSH
  96: LD_INT 1
  98: ST_TO_ADDR
// uc_nation = 1 ;
  99: LD_ADDR_OWVAR 21
 103: PUSH
 104: LD_INT 1
 106: ST_TO_ADDR
// hc_gallery =  ;
 107: LD_ADDR_OWVAR 33
 111: PUSH
 112: LD_STRING 
 114: ST_TO_ADDR
// hc_name =  ;
 115: LD_ADDR_OWVAR 26
 119: PUSH
 120: LD_STRING 
 122: ST_TO_ADDR
// for i in Am1_Turret do
 123: LD_ADDR_VAR 0 3
 127: PUSH
 128: LD_EXP 4
 132: PUSH
 133: FOR_IN
 134: IFFALSE 326
// begin if IsInUnit ( i ) = 0 then
 136: LD_VAR 0 3
 140: PPUSH
 141: CALL_OW 310
 145: PUSH
 146: LD_INT 0
 148: EQUAL
 149: IFFALSE 324
// begin Level = [ 3 , 3 , 3 ] [ Difficulty ] ;
 151: LD_ADDR_VAR 0 10
 155: PUSH
 156: LD_INT 3
 158: PUSH
 159: LD_INT 3
 161: PUSH
 162: LD_INT 3
 164: PUSH
 165: EMPTY
 166: LIST
 167: LIST
 168: LIST
 169: PUSH
 170: LD_OWVAR 67
 174: ARRAY
 175: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
 176: LD_ADDR_OWVAR 29
 180: PUSH
 181: LD_INT 9
 183: PPUSH
 184: LD_INT 11
 186: PPUSH
 187: CALL_OW 12
 191: PUSH
 192: LD_INT 10
 194: PPUSH
 195: LD_INT 12
 197: PPUSH
 198: CALL_OW 12
 202: PUSH
 203: EMPTY
 204: LIST
 205: LIST
 206: ST_TO_ADDR
// hc_skills = [ Level , 1 + Level , Rand ( 1 , 2 ) + Level , Rand ( 0 , 4 ) ] ;
 207: LD_ADDR_OWVAR 31
 211: PUSH
 212: LD_VAR 0 10
 216: PUSH
 217: LD_INT 1
 219: PUSH
 220: LD_VAR 0 10
 224: PLUS
 225: PUSH
 226: LD_INT 1
 228: PPUSH
 229: LD_INT 2
 231: PPUSH
 232: CALL_OW 12
 236: PUSH
 237: LD_VAR 0 10
 241: PLUS
 242: PUSH
 243: LD_INT 0
 245: PPUSH
 246: LD_INT 4
 248: PPUSH
 249: CALL_OW 12
 253: PUSH
 254: EMPTY
 255: LIST
 256: LIST
 257: LIST
 258: LIST
 259: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
 260: LD_ADDR_OWVAR 27
 264: PUSH
 265: LD_INT 1
 267: PPUSH
 268: LD_INT 2
 270: PPUSH
 271: CALL_OW 12
 275: ST_TO_ADDR
// hc_class = 1 ;
 276: LD_ADDR_OWVAR 28
 280: PUSH
 281: LD_INT 1
 283: ST_TO_ADDR
// un := CreateHuman ;
 284: LD_ADDR_VAR 0 4
 288: PUSH
 289: CALL_OW 44
 293: ST_TO_ADDR
// PlaceHumanInUnit ( un , i ) ;
 294: LD_VAR 0 4
 298: PPUSH
 299: LD_VAR 0 3
 303: PPUSH
 304: CALL_OW 52
// AmericanPerson = AmericanPerson ^ un ;
 308: LD_ADDR_EXP 3
 312: PUSH
 313: LD_EXP 3
 317: PUSH
 318: LD_VAR 0 4
 322: ADD
 323: ST_TO_ADDR
// end ; end ;
 324: GO 133
 326: POP
 327: POP
// for i in Am2_Turret do
 328: LD_ADDR_VAR 0 3
 332: PUSH
 333: LD_EXP 5
 337: PUSH
 338: FOR_IN
 339: IFFALSE 515
// begin if IsInUnit ( i ) = 0 then
 341: LD_VAR 0 3
 345: PPUSH
 346: CALL_OW 310
 350: PUSH
 351: LD_INT 0
 353: EQUAL
 354: IFFALSE 513
// begin Level = [ 3 , 3 , 3 ] [ Difficulty ] ;
 356: LD_ADDR_VAR 0 10
 360: PUSH
 361: LD_INT 3
 363: PUSH
 364: LD_INT 3
 366: PUSH
 367: LD_INT 3
 369: PUSH
 370: EMPTY
 371: LIST
 372: LIST
 373: LIST
 374: PUSH
 375: LD_OWVAR 67
 379: ARRAY
 380: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
 381: LD_ADDR_OWVAR 29
 385: PUSH
 386: LD_INT 9
 388: PPUSH
 389: LD_INT 11
 391: PPUSH
 392: CALL_OW 12
 396: PUSH
 397: LD_INT 10
 399: PPUSH
 400: LD_INT 12
 402: PPUSH
 403: CALL_OW 12
 407: PUSH
 408: EMPTY
 409: LIST
 410: LIST
 411: ST_TO_ADDR
// hc_skills = [ Level , 1 + Level , Rand ( 1 , 2 ) + Level , Rand ( 0 , 4 ) ] ;
 412: LD_ADDR_OWVAR 31
 416: PUSH
 417: LD_VAR 0 10
 421: PUSH
 422: LD_INT 1
 424: PUSH
 425: LD_VAR 0 10
 429: PLUS
 430: PUSH
 431: LD_INT 1
 433: PPUSH
 434: LD_INT 2
 436: PPUSH
 437: CALL_OW 12
 441: PUSH
 442: LD_VAR 0 10
 446: PLUS
 447: PUSH
 448: LD_INT 0
 450: PPUSH
 451: LD_INT 4
 453: PPUSH
 454: CALL_OW 12
 458: PUSH
 459: EMPTY
 460: LIST
 461: LIST
 462: LIST
 463: LIST
 464: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
 465: LD_ADDR_OWVAR 27
 469: PUSH
 470: LD_INT 1
 472: PPUSH
 473: LD_INT 2
 475: PPUSH
 476: CALL_OW 12
 480: ST_TO_ADDR
// hc_class = 1 ;
 481: LD_ADDR_OWVAR 28
 485: PUSH
 486: LD_INT 1
 488: ST_TO_ADDR
// un := CreateHuman ;
 489: LD_ADDR_VAR 0 4
 493: PUSH
 494: CALL_OW 44
 498: ST_TO_ADDR
// PlaceHumanInUnit ( un , i ) ;
 499: LD_VAR 0 4
 503: PPUSH
 504: LD_VAR 0 3
 508: PPUSH
 509: CALL_OW 52
// end ; end ;
 513: GO 338
 515: POP
 516: POP
// for i in fabryka1 do
 517: LD_ADDR_VAR 0 3
 521: PUSH
 522: LD_INT 223
 524: PUSH
 525: FOR_IN
 526: IFFALSE 760
// begin l = 0 ;
 528: LD_ADDR_VAR 0 9
 532: PUSH
 533: LD_INT 0
 535: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
 536: LD_VAR 0 3
 540: PPUSH
 541: CALL_OW 310
 545: PUSH
 546: LD_INT 0
 548: EQUAL
 549: IFFALSE 758
// begin Level = [ 5 , 5 , 5 ] [ Difficulty ] ;
 551: LD_ADDR_VAR 0 10
 555: PUSH
 556: LD_INT 5
 558: PUSH
 559: LD_INT 5
 561: PUSH
 562: LD_INT 5
 564: PUSH
 565: EMPTY
 566: LIST
 567: LIST
 568: LIST
 569: PUSH
 570: LD_OWVAR 67
 574: ARRAY
 575: ST_TO_ADDR
// repeat begin uc_side = 1 ;
 576: LD_ADDR_OWVAR 20
 580: PUSH
 581: LD_INT 1
 583: ST_TO_ADDR
// uc_nation = 1 ;
 584: LD_ADDR_OWVAR 21
 588: PUSH
 589: LD_INT 1
 591: ST_TO_ADDR
// hc_gallery =  ;
 592: LD_ADDR_OWVAR 33
 596: PUSH
 597: LD_STRING 
 599: ST_TO_ADDR
// hc_name =  ;
 600: LD_ADDR_OWVAR 26
 604: PUSH
 605: LD_STRING 
 607: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
 608: LD_ADDR_OWVAR 29
 612: PUSH
 613: LD_INT 9
 615: PPUSH
 616: LD_INT 11
 618: PPUSH
 619: CALL_OW 12
 623: PUSH
 624: LD_INT 10
 626: PPUSH
 627: LD_INT 12
 629: PPUSH
 630: CALL_OW 12
 634: PUSH
 635: EMPTY
 636: LIST
 637: LIST
 638: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 0 , 1 ) ] ;
 639: LD_ADDR_OWVAR 31
 643: PUSH
 644: LD_INT 0
 646: PPUSH
 647: LD_INT 3
 649: PPUSH
 650: CALL_OW 12
 654: PUSH
 655: LD_INT 0
 657: PPUSH
 658: LD_INT 1
 660: PPUSH
 661: CALL_OW 12
 665: PUSH
 666: LD_VAR 0 10
 670: PUSH
 671: LD_INT 0
 673: PPUSH
 674: LD_INT 1
 676: PPUSH
 677: CALL_OW 12
 681: PUSH
 682: EMPTY
 683: LIST
 684: LIST
 685: LIST
 686: LIST
 687: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
 688: LD_ADDR_OWVAR 27
 692: PUSH
 693: LD_INT 1
 695: PPUSH
 696: LD_INT 2
 698: PPUSH
 699: CALL_OW 12
 703: ST_TO_ADDR
// hc_class = 3 ;
 704: LD_ADDR_OWVAR 28
 708: PUSH
 709: LD_INT 3
 711: ST_TO_ADDR
// un = CreateHuman ;
 712: LD_ADDR_VAR 0 4
 716: PUSH
 717: CALL_OW 44
 721: ST_TO_ADDR
// PlaceHumanInUnit ( un , fabryka1 ) ;
 722: LD_VAR 0 4
 726: PPUSH
 727: LD_INT 223
 729: PPUSH
 730: CALL_OW 52
// l = l + 1 ;
 734: LD_ADDR_VAR 0 9
 738: PUSH
 739: LD_VAR 0 9
 743: PUSH
 744: LD_INT 1
 746: PLUS
 747: ST_TO_ADDR
// end until l = 4 ;
 748: LD_VAR 0 9
 752: PUSH
 753: LD_INT 4
 755: EQUAL
 756: IFFALSE 576
// end ; end ;
 758: GO 525
 760: POP
 761: POP
// for i in lab1 do
 762: LD_ADDR_VAR 0 3
 766: PUSH
 767: LD_INT 216
 769: PUSH
 770: FOR_IN
 771: IFFALSE 1005
// begin l = 0 ;
 773: LD_ADDR_VAR 0 9
 777: PUSH
 778: LD_INT 0
 780: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
 781: LD_VAR 0 3
 785: PPUSH
 786: CALL_OW 310
 790: PUSH
 791: LD_INT 0
 793: EQUAL
 794: IFFALSE 1003
// begin Level = [ 4 , 4 , 4 ] [ Difficulty ] ;
 796: LD_ADDR_VAR 0 10
 800: PUSH
 801: LD_INT 4
 803: PUSH
 804: LD_INT 4
 806: PUSH
 807: LD_INT 4
 809: PUSH
 810: EMPTY
 811: LIST
 812: LIST
 813: LIST
 814: PUSH
 815: LD_OWVAR 67
 819: ARRAY
 820: ST_TO_ADDR
// repeat begin uc_side = 1 ;
 821: LD_ADDR_OWVAR 20
 825: PUSH
 826: LD_INT 1
 828: ST_TO_ADDR
// uc_nation = 1 ;
 829: LD_ADDR_OWVAR 21
 833: PUSH
 834: LD_INT 1
 836: ST_TO_ADDR
// hc_gallery =  ;
 837: LD_ADDR_OWVAR 33
 841: PUSH
 842: LD_STRING 
 844: ST_TO_ADDR
// hc_name =  ;
 845: LD_ADDR_OWVAR 26
 849: PUSH
 850: LD_STRING 
 852: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
 853: LD_ADDR_OWVAR 29
 857: PUSH
 858: LD_INT 9
 860: PPUSH
 861: LD_INT 11
 863: PPUSH
 864: CALL_OW 12
 868: PUSH
 869: LD_INT 10
 871: PPUSH
 872: LD_INT 12
 874: PPUSH
 875: CALL_OW 12
 879: PUSH
 880: EMPTY
 881: LIST
 882: LIST
 883: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 2 , 4 ) ] ;
 884: LD_ADDR_OWVAR 31
 888: PUSH
 889: LD_INT 0
 891: PPUSH
 892: LD_INT 3
 894: PPUSH
 895: CALL_OW 12
 899: PUSH
 900: LD_INT 0
 902: PPUSH
 903: LD_INT 1
 905: PPUSH
 906: CALL_OW 12
 910: PUSH
 911: LD_VAR 0 10
 915: PUSH
 916: LD_INT 2
 918: PPUSH
 919: LD_INT 4
 921: PPUSH
 922: CALL_OW 12
 926: PUSH
 927: EMPTY
 928: LIST
 929: LIST
 930: LIST
 931: LIST
 932: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
 933: LD_ADDR_OWVAR 27
 937: PUSH
 938: LD_INT 1
 940: PPUSH
 941: LD_INT 2
 943: PPUSH
 944: CALL_OW 12
 948: ST_TO_ADDR
// hc_class = 4 ;
 949: LD_ADDR_OWVAR 28
 953: PUSH
 954: LD_INT 4
 956: ST_TO_ADDR
// un = CreateHuman ;
 957: LD_ADDR_VAR 0 4
 961: PUSH
 962: CALL_OW 44
 966: ST_TO_ADDR
// PlaceHumanInUnit ( un , lab1 ) ;
 967: LD_VAR 0 4
 971: PPUSH
 972: LD_INT 216
 974: PPUSH
 975: CALL_OW 52
// l = l + 1 ;
 979: LD_ADDR_VAR 0 9
 983: PUSH
 984: LD_VAR 0 9
 988: PUSH
 989: LD_INT 1
 991: PLUS
 992: ST_TO_ADDR
// end until l = 3 ;
 993: LD_VAR 0 9
 997: PUSH
 998: LD_INT 3
1000: EQUAL
1001: IFFALSE 821
// end ; end ;
1003: GO 770
1005: POP
1006: POP
// for i in lab2 do
1007: LD_ADDR_VAR 0 3
1011: PUSH
1012: LD_INT 200
1014: PUSH
1015: FOR_IN
1016: IFFALSE 1250
// begin ; l = 0 ;
1018: LD_ADDR_VAR 0 9
1022: PUSH
1023: LD_INT 0
1025: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1026: LD_VAR 0 3
1030: PPUSH
1031: CALL_OW 310
1035: PUSH
1036: LD_INT 0
1038: EQUAL
1039: IFFALSE 1248
// begin Level = [ 4 , 4 , 4 ] [ Difficulty ] ;
1041: LD_ADDR_VAR 0 10
1045: PUSH
1046: LD_INT 4
1048: PUSH
1049: LD_INT 4
1051: PUSH
1052: LD_INT 4
1054: PUSH
1055: EMPTY
1056: LIST
1057: LIST
1058: LIST
1059: PUSH
1060: LD_OWVAR 67
1064: ARRAY
1065: ST_TO_ADDR
// repeat begin uc_side = 1 ;
1066: LD_ADDR_OWVAR 20
1070: PUSH
1071: LD_INT 1
1073: ST_TO_ADDR
// uc_nation = 1 ;
1074: LD_ADDR_OWVAR 21
1078: PUSH
1079: LD_INT 1
1081: ST_TO_ADDR
// hc_gallery =  ;
1082: LD_ADDR_OWVAR 33
1086: PUSH
1087: LD_STRING 
1089: ST_TO_ADDR
// hc_name =  ;
1090: LD_ADDR_OWVAR 26
1094: PUSH
1095: LD_STRING 
1097: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1098: LD_ADDR_OWVAR 29
1102: PUSH
1103: LD_INT 9
1105: PPUSH
1106: LD_INT 11
1108: PPUSH
1109: CALL_OW 12
1113: PUSH
1114: LD_INT 10
1116: PPUSH
1117: LD_INT 12
1119: PPUSH
1120: CALL_OW 12
1124: PUSH
1125: EMPTY
1126: LIST
1127: LIST
1128: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 2 , 4 ) ] ;
1129: LD_ADDR_OWVAR 31
1133: PUSH
1134: LD_INT 0
1136: PPUSH
1137: LD_INT 3
1139: PPUSH
1140: CALL_OW 12
1144: PUSH
1145: LD_INT 0
1147: PPUSH
1148: LD_INT 1
1150: PPUSH
1151: CALL_OW 12
1155: PUSH
1156: LD_VAR 0 10
1160: PUSH
1161: LD_INT 2
1163: PPUSH
1164: LD_INT 4
1166: PPUSH
1167: CALL_OW 12
1171: PUSH
1172: EMPTY
1173: LIST
1174: LIST
1175: LIST
1176: LIST
1177: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1178: LD_ADDR_OWVAR 27
1182: PUSH
1183: LD_INT 1
1185: PPUSH
1186: LD_INT 2
1188: PPUSH
1189: CALL_OW 12
1193: ST_TO_ADDR
// hc_class = 4 ;
1194: LD_ADDR_OWVAR 28
1198: PUSH
1199: LD_INT 4
1201: ST_TO_ADDR
// un = CreateHuman ;
1202: LD_ADDR_VAR 0 4
1206: PUSH
1207: CALL_OW 44
1211: ST_TO_ADDR
// PlaceHumanInUnit ( un , lab2 ) ;
1212: LD_VAR 0 4
1216: PPUSH
1217: LD_INT 200
1219: PPUSH
1220: CALL_OW 52
// l = l + 1 ;
1224: LD_ADDR_VAR 0 9
1228: PUSH
1229: LD_VAR 0 9
1233: PUSH
1234: LD_INT 1
1236: PLUS
1237: ST_TO_ADDR
// end until l = 1 ;
1238: LD_VAR 0 9
1242: PUSH
1243: LD_INT 1
1245: EQUAL
1246: IFFALSE 1066
// end ; end ;
1248: GO 1015
1250: POP
1251: POP
// for i in lab3 do
1252: LD_ADDR_VAR 0 3
1256: PUSH
1257: LD_INT 134
1259: PUSH
1260: FOR_IN
1261: IFFALSE 1511
// begin l = 0 ;
1263: LD_ADDR_VAR 0 9
1267: PUSH
1268: LD_INT 0
1270: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1271: LD_VAR 0 3
1275: PPUSH
1276: CALL_OW 310
1280: PUSH
1281: LD_INT 0
1283: EQUAL
1284: IFFALSE 1509
// begin Level = [ 3 , 3 , 3 ] [ Difficulty ] ;
1286: LD_ADDR_VAR 0 10
1290: PUSH
1291: LD_INT 3
1293: PUSH
1294: LD_INT 3
1296: PUSH
1297: LD_INT 3
1299: PUSH
1300: EMPTY
1301: LIST
1302: LIST
1303: LIST
1304: PUSH
1305: LD_OWVAR 67
1309: ARRAY
1310: ST_TO_ADDR
// repeat begin uc_side = 1 ;
1311: LD_ADDR_OWVAR 20
1315: PUSH
1316: LD_INT 1
1318: ST_TO_ADDR
// uc_nation = 1 ;
1319: LD_ADDR_OWVAR 21
1323: PUSH
1324: LD_INT 1
1326: ST_TO_ADDR
// hc_gallery =  ;
1327: LD_ADDR_OWVAR 33
1331: PUSH
1332: LD_STRING 
1334: ST_TO_ADDR
// hc_name =  ;
1335: LD_ADDR_OWVAR 26
1339: PUSH
1340: LD_STRING 
1342: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1343: LD_ADDR_OWVAR 29
1347: PUSH
1348: LD_INT 9
1350: PPUSH
1351: LD_INT 11
1353: PPUSH
1354: CALL_OW 12
1358: PUSH
1359: LD_INT 10
1361: PPUSH
1362: LD_INT 12
1364: PPUSH
1365: CALL_OW 12
1369: PUSH
1370: EMPTY
1371: LIST
1372: LIST
1373: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 2 , 4 ) ] ;
1374: LD_ADDR_OWVAR 31
1378: PUSH
1379: LD_INT 0
1381: PPUSH
1382: LD_INT 3
1384: PPUSH
1385: CALL_OW 12
1389: PUSH
1390: LD_INT 0
1392: PPUSH
1393: LD_INT 1
1395: PPUSH
1396: CALL_OW 12
1400: PUSH
1401: LD_VAR 0 10
1405: PUSH
1406: LD_INT 2
1408: PPUSH
1409: LD_INT 4
1411: PPUSH
1412: CALL_OW 12
1416: PUSH
1417: EMPTY
1418: LIST
1419: LIST
1420: LIST
1421: LIST
1422: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1423: LD_ADDR_OWVAR 27
1427: PUSH
1428: LD_INT 1
1430: PPUSH
1431: LD_INT 2
1433: PPUSH
1434: CALL_OW 12
1438: ST_TO_ADDR
// hc_class = 4 ;
1439: LD_ADDR_OWVAR 28
1443: PUSH
1444: LD_INT 4
1446: ST_TO_ADDR
// un = CreateHuman ;
1447: LD_ADDR_VAR 0 4
1451: PUSH
1452: CALL_OW 44
1456: ST_TO_ADDR
// PlaceHumanInUnit ( un , lab3 ) ;
1457: LD_VAR 0 4
1461: PPUSH
1462: LD_INT 134
1464: PPUSH
1465: CALL_OW 52
// AmericanPerson = AmericanPerson ^ un ;
1469: LD_ADDR_EXP 3
1473: PUSH
1474: LD_EXP 3
1478: PUSH
1479: LD_VAR 0 4
1483: ADD
1484: ST_TO_ADDR
// l = l + 1 ;
1485: LD_ADDR_VAR 0 9
1489: PUSH
1490: LD_VAR 0 9
1494: PUSH
1495: LD_INT 1
1497: PLUS
1498: ST_TO_ADDR
// end until l = 1 ;
1499: LD_VAR 0 9
1503: PUSH
1504: LD_INT 1
1506: EQUAL
1507: IFFALSE 1311
// end ; end ;
1509: GO 1260
1511: POP
1512: POP
// for i in fabryka2 do
1513: LD_ADDR_VAR 0 3
1517: PUSH
1518: LD_INT 130
1520: PUSH
1521: FOR_IN
1522: IFFALSE 2555
// begin l = 0 ;
1524: LD_ADDR_VAR 0 9
1528: PUSH
1529: LD_INT 0
1531: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1532: LD_VAR 0 3
1536: PPUSH
1537: CALL_OW 310
1541: PUSH
1542: LD_INT 0
1544: EQUAL
1545: IFFALSE 1770
// begin Level = [ 4 , 4 , 4 ] [ Difficulty ] ;
1547: LD_ADDR_VAR 0 10
1551: PUSH
1552: LD_INT 4
1554: PUSH
1555: LD_INT 4
1557: PUSH
1558: LD_INT 4
1560: PUSH
1561: EMPTY
1562: LIST
1563: LIST
1564: LIST
1565: PUSH
1566: LD_OWVAR 67
1570: ARRAY
1571: ST_TO_ADDR
// repeat begin uc_side = 1 ;
1572: LD_ADDR_OWVAR 20
1576: PUSH
1577: LD_INT 1
1579: ST_TO_ADDR
// uc_nation = 1 ;
1580: LD_ADDR_OWVAR 21
1584: PUSH
1585: LD_INT 1
1587: ST_TO_ADDR
// hc_gallery =  ;
1588: LD_ADDR_OWVAR 33
1592: PUSH
1593: LD_STRING 
1595: ST_TO_ADDR
// hc_name =  ;
1596: LD_ADDR_OWVAR 26
1600: PUSH
1601: LD_STRING 
1603: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1604: LD_ADDR_OWVAR 29
1608: PUSH
1609: LD_INT 9
1611: PPUSH
1612: LD_INT 11
1614: PPUSH
1615: CALL_OW 12
1619: PUSH
1620: LD_INT 10
1622: PPUSH
1623: LD_INT 12
1625: PPUSH
1626: CALL_OW 12
1630: PUSH
1631: EMPTY
1632: LIST
1633: LIST
1634: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 0 , 1 ) ] ;
1635: LD_ADDR_OWVAR 31
1639: PUSH
1640: LD_INT 0
1642: PPUSH
1643: LD_INT 3
1645: PPUSH
1646: CALL_OW 12
1650: PUSH
1651: LD_INT 0
1653: PPUSH
1654: LD_INT 1
1656: PPUSH
1657: CALL_OW 12
1661: PUSH
1662: LD_VAR 0 10
1666: PUSH
1667: LD_INT 0
1669: PPUSH
1670: LD_INT 1
1672: PPUSH
1673: CALL_OW 12
1677: PUSH
1678: EMPTY
1679: LIST
1680: LIST
1681: LIST
1682: LIST
1683: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1684: LD_ADDR_OWVAR 27
1688: PUSH
1689: LD_INT 1
1691: PPUSH
1692: LD_INT 2
1694: PPUSH
1695: CALL_OW 12
1699: ST_TO_ADDR
// hc_class = 3 ;
1700: LD_ADDR_OWVAR 28
1704: PUSH
1705: LD_INT 3
1707: ST_TO_ADDR
// un = CreateHuman ;
1708: LD_ADDR_VAR 0 4
1712: PUSH
1713: CALL_OW 44
1717: ST_TO_ADDR
// PlaceHumanInUnit ( un , fabryka2 ) ;
1718: LD_VAR 0 4
1722: PPUSH
1723: LD_INT 130
1725: PPUSH
1726: CALL_OW 52
// AmericanPerson = AmericanPerson ^ un ;
1730: LD_ADDR_EXP 3
1734: PUSH
1735: LD_EXP 3
1739: PUSH
1740: LD_VAR 0 4
1744: ADD
1745: ST_TO_ADDR
// l = l + 1 ;
1746: LD_ADDR_VAR 0 9
1750: PUSH
1751: LD_VAR 0 9
1755: PUSH
1756: LD_INT 1
1758: PLUS
1759: ST_TO_ADDR
// end until l = 2 ;
1760: LD_VAR 0 9
1764: PUSH
1765: LD_INT 2
1767: EQUAL
1768: IFFALSE 1572
// end ; for i in lab4 do
1770: LD_ADDR_VAR 0 3
1774: PUSH
1775: LD_INT 618
1777: PUSH
1778: FOR_IN
1779: IFFALSE 2029
// begin l = 0 ;
1781: LD_ADDR_VAR 0 9
1785: PUSH
1786: LD_INT 0
1788: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1789: LD_VAR 0 3
1793: PPUSH
1794: CALL_OW 310
1798: PUSH
1799: LD_INT 0
1801: EQUAL
1802: IFFALSE 2027
// begin Level = [ 3 , 3 , 3 ] [ Difficulty ] ;
1804: LD_ADDR_VAR 0 10
1808: PUSH
1809: LD_INT 3
1811: PUSH
1812: LD_INT 3
1814: PUSH
1815: LD_INT 3
1817: PUSH
1818: EMPTY
1819: LIST
1820: LIST
1821: LIST
1822: PUSH
1823: LD_OWVAR 67
1827: ARRAY
1828: ST_TO_ADDR
// repeat begin uc_side = 1 ;
1829: LD_ADDR_OWVAR 20
1833: PUSH
1834: LD_INT 1
1836: ST_TO_ADDR
// uc_nation = 1 ;
1837: LD_ADDR_OWVAR 21
1841: PUSH
1842: LD_INT 1
1844: ST_TO_ADDR
// hc_gallery =  ;
1845: LD_ADDR_OWVAR 33
1849: PUSH
1850: LD_STRING 
1852: ST_TO_ADDR
// hc_name =  ;
1853: LD_ADDR_OWVAR 26
1857: PUSH
1858: LD_STRING 
1860: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1861: LD_ADDR_OWVAR 29
1865: PUSH
1866: LD_INT 9
1868: PPUSH
1869: LD_INT 11
1871: PPUSH
1872: CALL_OW 12
1876: PUSH
1877: LD_INT 10
1879: PPUSH
1880: LD_INT 12
1882: PPUSH
1883: CALL_OW 12
1887: PUSH
1888: EMPTY
1889: LIST
1890: LIST
1891: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Rand ( 1 , 3 ) , Level ] ;
1892: LD_ADDR_OWVAR 31
1896: PUSH
1897: LD_INT 0
1899: PPUSH
1900: LD_INT 3
1902: PPUSH
1903: CALL_OW 12
1907: PUSH
1908: LD_INT 0
1910: PPUSH
1911: LD_INT 1
1913: PPUSH
1914: CALL_OW 12
1918: PUSH
1919: LD_INT 1
1921: PPUSH
1922: LD_INT 3
1924: PPUSH
1925: CALL_OW 12
1929: PUSH
1930: LD_VAR 0 10
1934: PUSH
1935: EMPTY
1936: LIST
1937: LIST
1938: LIST
1939: LIST
1940: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1941: LD_ADDR_OWVAR 27
1945: PUSH
1946: LD_INT 1
1948: PPUSH
1949: LD_INT 2
1951: PPUSH
1952: CALL_OW 12
1956: ST_TO_ADDR
// hc_class = 4 ;
1957: LD_ADDR_OWVAR 28
1961: PUSH
1962: LD_INT 4
1964: ST_TO_ADDR
// un = CreateHuman ;
1965: LD_ADDR_VAR 0 4
1969: PUSH
1970: CALL_OW 44
1974: ST_TO_ADDR
// PlaceHumanInUnit ( un , lab4 ) ;
1975: LD_VAR 0 4
1979: PPUSH
1980: LD_INT 618
1982: PPUSH
1983: CALL_OW 52
// AmericanPerson = AmericanPerson ^ un ;
1987: LD_ADDR_EXP 3
1991: PUSH
1992: LD_EXP 3
1996: PUSH
1997: LD_VAR 0 4
2001: ADD
2002: ST_TO_ADDR
// l = l + 1 ;
2003: LD_ADDR_VAR 0 9
2007: PUSH
2008: LD_VAR 0 9
2012: PUSH
2013: LD_INT 1
2015: PLUS
2016: ST_TO_ADDR
// end until l = 1 ;
2017: LD_VAR 0 9
2021: PUSH
2022: LD_INT 1
2024: EQUAL
2025: IFFALSE 1829
// end ; end ;
2027: GO 1778
2029: POP
2030: POP
// for i in kosze1 do
2031: LD_ADDR_VAR 0 3
2035: PUSH
2036: LD_INT 617
2038: PUSH
2039: FOR_IN
2040: IFFALSE 2551
// begin l = 0 ;
2042: LD_ADDR_VAR 0 9
2046: PUSH
2047: LD_INT 0
2049: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
2050: LD_VAR 0 3
2054: PPUSH
2055: CALL_OW 310
2059: PUSH
2060: LD_INT 0
2062: EQUAL
2063: IFFALSE 2288
// begin Level = [ 4 , 4 , 4 ] [ Difficulty ] ;
2065: LD_ADDR_VAR 0 10
2069: PUSH
2070: LD_INT 4
2072: PUSH
2073: LD_INT 4
2075: PUSH
2076: LD_INT 4
2078: PUSH
2079: EMPTY
2080: LIST
2081: LIST
2082: LIST
2083: PUSH
2084: LD_OWVAR 67
2088: ARRAY
2089: ST_TO_ADDR
// repeat begin uc_side = 1 ;
2090: LD_ADDR_OWVAR 20
2094: PUSH
2095: LD_INT 1
2097: ST_TO_ADDR
// uc_nation = 1 ;
2098: LD_ADDR_OWVAR 21
2102: PUSH
2103: LD_INT 1
2105: ST_TO_ADDR
// hc_gallery =  ;
2106: LD_ADDR_OWVAR 33
2110: PUSH
2111: LD_STRING 
2113: ST_TO_ADDR
// hc_name =  ;
2114: LD_ADDR_OWVAR 26
2118: PUSH
2119: LD_STRING 
2121: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
2122: LD_ADDR_OWVAR 29
2126: PUSH
2127: LD_INT 9
2129: PPUSH
2130: LD_INT 11
2132: PPUSH
2133: CALL_OW 12
2137: PUSH
2138: LD_INT 10
2140: PPUSH
2141: LD_INT 12
2143: PPUSH
2144: CALL_OW 12
2148: PUSH
2149: EMPTY
2150: LIST
2151: LIST
2152: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 0 , 1 ) ] ;
2153: LD_ADDR_OWVAR 31
2157: PUSH
2158: LD_INT 0
2160: PPUSH
2161: LD_INT 3
2163: PPUSH
2164: CALL_OW 12
2168: PUSH
2169: LD_INT 0
2171: PPUSH
2172: LD_INT 1
2174: PPUSH
2175: CALL_OW 12
2179: PUSH
2180: LD_VAR 0 10
2184: PUSH
2185: LD_INT 0
2187: PPUSH
2188: LD_INT 1
2190: PPUSH
2191: CALL_OW 12
2195: PUSH
2196: EMPTY
2197: LIST
2198: LIST
2199: LIST
2200: LIST
2201: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
2202: LD_ADDR_OWVAR 27
2206: PUSH
2207: LD_INT 1
2209: PPUSH
2210: LD_INT 2
2212: PPUSH
2213: CALL_OW 12
2217: ST_TO_ADDR
// hc_class = 1 ;
2218: LD_ADDR_OWVAR 28
2222: PUSH
2223: LD_INT 1
2225: ST_TO_ADDR
// un = CreateHuman ;
2226: LD_ADDR_VAR 0 4
2230: PUSH
2231: CALL_OW 44
2235: ST_TO_ADDR
// PlaceHumanInUnit ( un , kosze1 ) ;
2236: LD_VAR 0 4
2240: PPUSH
2241: LD_INT 617
2243: PPUSH
2244: CALL_OW 52
// AmericanPerson = AmericanPerson ^ un ;
2248: LD_ADDR_EXP 3
2252: PUSH
2253: LD_EXP 3
2257: PUSH
2258: LD_VAR 0 4
2262: ADD
2263: ST_TO_ADDR
// l = l + 1 ;
2264: LD_ADDR_VAR 0 9
2268: PUSH
2269: LD_VAR 0 9
2273: PUSH
2274: LD_INT 1
2276: PLUS
2277: ST_TO_ADDR
// end until l = 2 ;
2278: LD_VAR 0 9
2282: PUSH
2283: LD_INT 2
2285: EQUAL
2286: IFFALSE 2090
// end ; for i in kosze2 do
2288: LD_ADDR_VAR 0 3
2292: PUSH
2293: LD_INT 465
2295: PUSH
2296: FOR_IN
2297: IFFALSE 2547
// begin l = 0 ;
2299: LD_ADDR_VAR 0 9
2303: PUSH
2304: LD_INT 0
2306: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
2307: LD_VAR 0 3
2311: PPUSH
2312: CALL_OW 310
2316: PUSH
2317: LD_INT 0
2319: EQUAL
2320: IFFALSE 2545
// begin Level = [ 4 , 4 , 4 ] [ Difficulty ] ;
2322: LD_ADDR_VAR 0 10
2326: PUSH
2327: LD_INT 4
2329: PUSH
2330: LD_INT 4
2332: PUSH
2333: LD_INT 4
2335: PUSH
2336: EMPTY
2337: LIST
2338: LIST
2339: LIST
2340: PUSH
2341: LD_OWVAR 67
2345: ARRAY
2346: ST_TO_ADDR
// repeat begin uc_side = 1 ;
2347: LD_ADDR_OWVAR 20
2351: PUSH
2352: LD_INT 1
2354: ST_TO_ADDR
// uc_nation = 1 ;
2355: LD_ADDR_OWVAR 21
2359: PUSH
2360: LD_INT 1
2362: ST_TO_ADDR
// hc_gallery =  ;
2363: LD_ADDR_OWVAR 33
2367: PUSH
2368: LD_STRING 
2370: ST_TO_ADDR
// hc_name =  ;
2371: LD_ADDR_OWVAR 26
2375: PUSH
2376: LD_STRING 
2378: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
2379: LD_ADDR_OWVAR 29
2383: PUSH
2384: LD_INT 9
2386: PPUSH
2387: LD_INT 11
2389: PPUSH
2390: CALL_OW 12
2394: PUSH
2395: LD_INT 10
2397: PPUSH
2398: LD_INT 12
2400: PPUSH
2401: CALL_OW 12
2405: PUSH
2406: EMPTY
2407: LIST
2408: LIST
2409: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 0 , 1 ) ] ;
2410: LD_ADDR_OWVAR 31
2414: PUSH
2415: LD_INT 0
2417: PPUSH
2418: LD_INT 3
2420: PPUSH
2421: CALL_OW 12
2425: PUSH
2426: LD_INT 0
2428: PPUSH
2429: LD_INT 1
2431: PPUSH
2432: CALL_OW 12
2436: PUSH
2437: LD_VAR 0 10
2441: PUSH
2442: LD_INT 0
2444: PPUSH
2445: LD_INT 1
2447: PPUSH
2448: CALL_OW 12
2452: PUSH
2453: EMPTY
2454: LIST
2455: LIST
2456: LIST
2457: LIST
2458: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
2459: LD_ADDR_OWVAR 27
2463: PUSH
2464: LD_INT 1
2466: PPUSH
2467: LD_INT 2
2469: PPUSH
2470: CALL_OW 12
2474: ST_TO_ADDR
// hc_class = 1 ;
2475: LD_ADDR_OWVAR 28
2479: PUSH
2480: LD_INT 1
2482: ST_TO_ADDR
// un = CreateHuman ;
2483: LD_ADDR_VAR 0 4
2487: PUSH
2488: CALL_OW 44
2492: ST_TO_ADDR
// PlaceHumanInUnit ( un , kosze2 ) ;
2493: LD_VAR 0 4
2497: PPUSH
2498: LD_INT 465
2500: PPUSH
2501: CALL_OW 52
// AmericanPerson = AmericanPerson ^ un ;
2505: LD_ADDR_EXP 3
2509: PUSH
2510: LD_EXP 3
2514: PUSH
2515: LD_VAR 0 4
2519: ADD
2520: ST_TO_ADDR
// l = l + 1 ;
2521: LD_ADDR_VAR 0 9
2525: PUSH
2526: LD_VAR 0 9
2530: PUSH
2531: LD_INT 1
2533: PLUS
2534: ST_TO_ADDR
// end until l = 2 ;
2535: LD_VAR 0 9
2539: PUSH
2540: LD_INT 2
2542: EQUAL
2543: IFFALSE 2347
// end ; end ;
2545: GO 2296
2547: POP
2548: POP
// end ;
2549: GO 2039
2551: POP
2552: POP
// end ;
2553: GO 1521
2555: POP
2556: POP
// end ; end_of_file
2557: LD_VAR 0 1
2561: RET
// export OWChyba ; export function PrepareHero1 ; begin
2562: LD_INT 0
2564: PPUSH
// uc_side = 4 ;
2565: LD_ADDR_OWVAR 20
2569: PUSH
2570: LD_INT 4
2572: ST_TO_ADDR
// uc_nation = 1 ;
2573: LD_ADDR_OWVAR 21
2577: PUSH
2578: LD_INT 1
2580: ST_TO_ADDR
// OWCHyba := CreateCharacter ( OWChyba ) ;
2581: LD_ADDR_EXP 6
2585: PUSH
2586: LD_STRING OWChyba
2588: PPUSH
2589: CALL_OW 34
2593: ST_TO_ADDR
// PlaceUnitArea ( OWChyba , GODKA , false ) ;
2594: LD_EXP 6
2598: PPUSH
2599: LD_INT 1
2601: PPUSH
2602: LD_INT 0
2604: PPUSH
2605: CALL_OW 49
// end ;
2609: LD_VAR 0 1
2613: RET
// export Nefarem ; export function PrepareHero2 ; begin
2614: LD_INT 0
2616: PPUSH
// uc_side = 1 ;
2617: LD_ADDR_OWVAR 20
2621: PUSH
2622: LD_INT 1
2624: ST_TO_ADDR
// uc_nation = 1 ;
2625: LD_ADDR_OWVAR 21
2629: PUSH
2630: LD_INT 1
2632: ST_TO_ADDR
// Nefarem := CreateCharacter ( Nefarem ) ;
2633: LD_ADDR_EXP 7
2637: PUSH
2638: LD_STRING Nefarem
2640: PPUSH
2641: CALL_OW 34
2645: ST_TO_ADDR
// PlaceUnitArea ( Nefarem , GODKA , false ) ;
2646: LD_EXP 7
2650: PPUSH
2651: LD_INT 1
2653: PPUSH
2654: LD_INT 0
2656: PPUSH
2657: CALL_OW 49
// end ;
2661: LD_VAR 0 1
2665: RET
// export PULK_02 ; export function PrepareHero3 ; begin
2666: LD_INT 0
2668: PPUSH
// uc_side = 1 ;
2669: LD_ADDR_OWVAR 20
2673: PUSH
2674: LD_INT 1
2676: ST_TO_ADDR
// uc_nation = 1 ;
2677: LD_ADDR_OWVAR 21
2681: PUSH
2682: LD_INT 1
2684: ST_TO_ADDR
// PULK_02 := CreateCharacter ( PULK_02 ) ;
2685: LD_ADDR_EXP 8
2689: PUSH
2690: LD_STRING PULK_02
2692: PPUSH
2693: CALL_OW 34
2697: ST_TO_ADDR
// PlaceUnitArea ( PULK_02 , SZYCHA , false ) ;
2698: LD_EXP 8
2702: PPUSH
2703: LD_INT 2
2705: PPUSH
2706: LD_INT 0
2708: PPUSH
2709: CALL_OW 49
// end ; end_of_file
2713: LD_VAR 0 1
2717: RET
// export center ; every 0 0$1 trigger Center = 1 do
2718: LD_EXP 9
2722: PUSH
2723: LD_INT 1
2725: EQUAL
2726: IFFALSE 2748
2728: GO 2730
2730: DISABLE
// begin ; CenterNowOnUnits ( OWChyba ) ;
2731: LD_EXP 6
2735: PPUSH
2736: CALL_OW 87
// CenterNowOnUnits ( f2 ) ;
2740: LD_INT 642
2742: PPUSH
2743: CALL_OW 87
// enable ;
2747: ENABLE
// end ; end_of_file
2748: END
// starting begin PrepareHero1 ;
2749: CALL 2562 0 0
// PrepareHero2 ;
2753: CALL 2614 0 0
// PrepareHero3 ;
2757: CALL 2666 0 0
// PrepareAmerican ;
2761: CALL 0 0 0
// inGameOn ;
2765: CALL_OW 8
// Center = 1 ;
2769: LD_ADDR_EXP 9
2773: PUSH
2774: LD_INT 1
2776: ST_TO_ADDR
// AddComEnterUnit ( z1 , q1 ) ;
2777: LD_INT 725
2779: PPUSH
2780: LD_INT 721
2782: PPUSH
2783: CALL_OW 180
// AddComEnterUnit ( z2 , q2 ) ;
2787: LD_INT 724
2789: PPUSH
2790: LD_INT 719
2792: PPUSH
2793: CALL_OW 180
// AddComEnterUnit ( z3 , q3 ) ;
2797: LD_INT 723
2799: PPUSH
2800: LD_INT 718
2802: PPUSH
2803: CALL_OW 180
// AddComEnterUnit ( z4 , q4 ) ;
2807: LD_INT 722
2809: PPUSH
2810: LD_INT 715
2812: PPUSH
2813: CALL_OW 180
// AddComEnterUnit ( AZ1 , AX1 ) ;
2817: LD_INT 793
2819: PPUSH
2820: LD_INT 751
2822: PPUSH
2823: CALL_OW 180
// AddComEnterUnit ( AZ2 , AX2 ) ;
2827: LD_INT 760
2829: PPUSH
2830: LD_INT 753
2832: PPUSH
2833: CALL_OW 180
// CenterNowOnUnits ( OWChyba ) ;
2837: LD_EXP 6
2841: PPUSH
2842: CALL_OW 87
// ComHold ( Nefarem ) ;
2846: LD_EXP 7
2850: PPUSH
2851: CALL_OW 140
// ComHold ( PULK_02 ) ;
2855: LD_EXP 8
2859: PPUSH
2860: CALL_OW 140
// ComHold ( OWChyba ) ;
2864: LD_EXP 6
2868: PPUSH
2869: CALL_OW 140
// ComTurnUnit ( OWChyba , Nefarem ) ;
2873: LD_EXP 6
2877: PPUSH
2878: LD_EXP 7
2882: PPUSH
2883: CALL_OW 119
// ComTurnUnit ( Nefarem , OWChyba ) ;
2887: LD_EXP 7
2891: PPUSH
2892: LD_EXP 6
2896: PPUSH
2897: CALL_OW 119
// Say ( Nefarem , w1 ) ;
2901: LD_EXP 7
2905: PPUSH
2906: LD_STRING w1
2908: PPUSH
2909: CALL_OW 88
// Say ( OWChyba , w2 ) ;
2913: LD_EXP 6
2917: PPUSH
2918: LD_STRING w2
2920: PPUSH
2921: CALL_OW 88
// Say ( Nefarem , w3 ) ;
2925: LD_EXP 7
2929: PPUSH
2930: LD_STRING w3
2932: PPUSH
2933: CALL_OW 88
// Say ( OWChyba , w4 ) ;
2937: LD_EXP 6
2941: PPUSH
2942: LD_STRING w4
2944: PPUSH
2945: CALL_OW 88
// AddComMoveToArea ( z1 , d1 ) ;
2949: LD_INT 725
2951: PPUSH
2952: LD_INT 28
2954: PPUSH
2955: CALL_OW 173
// AddComMoveToArea ( z2 , d1 ) ;
2959: LD_INT 724
2961: PPUSH
2962: LD_INT 28
2964: PPUSH
2965: CALL_OW 173
// AddComMoveToArea ( z3 , d1 ) ;
2969: LD_INT 723
2971: PPUSH
2972: LD_INT 28
2974: PPUSH
2975: CALL_OW 173
// AddComMoveToArea ( z4 , d1 ) ;
2979: LD_INT 722
2981: PPUSH
2982: LD_INT 28
2984: PPUSH
2985: CALL_OW 173
// AddComMoveToArea ( z1 , d2 ) ;
2989: LD_INT 725
2991: PPUSH
2992: LD_INT 29
2994: PPUSH
2995: CALL_OW 173
// AddComMoveToArea ( z2 , d2 ) ;
2999: LD_INT 724
3001: PPUSH
3002: LD_INT 29
3004: PPUSH
3005: CALL_OW 173
// AddComMoveToArea ( z3 , d2 ) ;
3009: LD_INT 723
3011: PPUSH
3012: LD_INT 29
3014: PPUSH
3015: CALL_OW 173
// AddComMoveToArea ( z4 , d2 ) ;
3019: LD_INT 722
3021: PPUSH
3022: LD_INT 29
3024: PPUSH
3025: CALL_OW 173
// AddComMoveToArea ( z1 , d3 ) ;
3029: LD_INT 725
3031: PPUSH
3032: LD_INT 30
3034: PPUSH
3035: CALL_OW 173
// AddComMoveToArea ( z2 , d3 ) ;
3039: LD_INT 724
3041: PPUSH
3042: LD_INT 30
3044: PPUSH
3045: CALL_OW 173
// AddComMoveToArea ( z3 , d3 ) ;
3049: LD_INT 723
3051: PPUSH
3052: LD_INT 30
3054: PPUSH
3055: CALL_OW 173
// AddComMoveToArea ( z4 , d4 ) ;
3059: LD_INT 722
3061: PPUSH
3062: LD_INT 31
3064: PPUSH
3065: CALL_OW 173
// AddComMoveToArea ( z1 , d4 ) ;
3069: LD_INT 725
3071: PPUSH
3072: LD_INT 31
3074: PPUSH
3075: CALL_OW 173
// AddComMoveToArea ( z2 , d4 ) ;
3079: LD_INT 724
3081: PPUSH
3082: LD_INT 31
3084: PPUSH
3085: CALL_OW 173
// AddComMoveToArea ( z3 , d4 ) ;
3089: LD_INT 723
3091: PPUSH
3092: LD_INT 31
3094: PPUSH
3095: CALL_OW 173
// AddComMoveToArea ( z4 , d4 ) ;
3099: LD_INT 722
3101: PPUSH
3102: LD_INT 31
3104: PPUSH
3105: CALL_OW 173
// AddComMoveToArea ( z1 , d5 ) ;
3109: LD_INT 725
3111: PPUSH
3112: LD_INT 32
3114: PPUSH
3115: CALL_OW 173
// AddComMoveToArea ( z2 , d5 ) ;
3119: LD_INT 724
3121: PPUSH
3122: LD_INT 32
3124: PPUSH
3125: CALL_OW 173
// AddComMoveToArea ( z3 , d5 ) ;
3129: LD_INT 723
3131: PPUSH
3132: LD_INT 32
3134: PPUSH
3135: CALL_OW 173
// AddComMoveToArea ( z4 , d5 ) ;
3139: LD_INT 722
3141: PPUSH
3142: LD_INT 32
3144: PPUSH
3145: CALL_OW 173
// AddComMoveToArea ( z1 , d6 ) ;
3149: LD_INT 725
3151: PPUSH
3152: LD_INT 33
3154: PPUSH
3155: CALL_OW 173
// AddComMoveToArea ( z2 , d6 ) ;
3159: LD_INT 724
3161: PPUSH
3162: LD_INT 33
3164: PPUSH
3165: CALL_OW 173
// AddComMoveToArea ( z3 , d5 ) ;
3169: LD_INT 723
3171: PPUSH
3172: LD_INT 32
3174: PPUSH
3175: CALL_OW 173
// AddComMoveToArea ( z4 , d5 ) ;
3179: LD_INT 722
3181: PPUSH
3182: LD_INT 32
3184: PPUSH
3185: CALL_OW 173
// AddComMoveToArea ( z1 , d7 ) ;
3189: LD_INT 725
3191: PPUSH
3192: LD_INT 34
3194: PPUSH
3195: CALL_OW 173
// AddComMoveToArea ( z2 , d7 ) ;
3199: LD_INT 724
3201: PPUSH
3202: LD_INT 34
3204: PPUSH
3205: CALL_OW 173
// AddComMoveToArea ( z3 , d7 ) ;
3209: LD_INT 723
3211: PPUSH
3212: LD_INT 34
3214: PPUSH
3215: CALL_OW 173
// AddComMoveToArea ( z4 , d7 ) ;
3219: LD_INT 722
3221: PPUSH
3222: LD_INT 34
3224: PPUSH
3225: CALL_OW 173
// AddComMoveToArea ( z1 , Area115 ) ;
3229: LD_INT 725
3231: PPUSH
3232: LD_INT 24
3234: PPUSH
3235: CALL_OW 173
// AddComMoveToArea ( z2 , Area115 ) ;
3239: LD_INT 724
3241: PPUSH
3242: LD_INT 24
3244: PPUSH
3245: CALL_OW 173
// AddComMoveToArea ( z3 , Area115 ) ;
3249: LD_INT 723
3251: PPUSH
3252: LD_INT 24
3254: PPUSH
3255: CALL_OW 173
// AddComMoveToArea ( z4 , Area115 ) ;
3259: LD_INT 722
3261: PPUSH
3262: LD_INT 24
3264: PPUSH
3265: CALL_OW 173
// Say ( Nefarem , w5 ) ;
3269: LD_EXP 7
3273: PPUSH
3274: LD_STRING w5
3276: PPUSH
3277: CALL_OW 88
// Say ( OWChyba , w6 ) ;
3281: LD_EXP 6
3285: PPUSH
3286: LD_STRING w6
3288: PPUSH
3289: CALL_OW 88
// Say ( Nefarem , w7 ) ;
3293: LD_EXP 7
3297: PPUSH
3298: LD_STRING w7
3300: PPUSH
3301: CALL_OW 88
// Say ( OWChyba , w8 ) ;
3305: LD_EXP 6
3309: PPUSH
3310: LD_STRING w8
3312: PPUSH
3313: CALL_OW 88
// Say ( OWChyba , w9 ) ;
3317: LD_EXP 6
3321: PPUSH
3322: LD_STRING w9
3324: PPUSH
3325: CALL_OW 88
// Say ( Nefarem , w10 ) ;
3329: LD_EXP 7
3333: PPUSH
3334: LD_STRING w10
3336: PPUSH
3337: CALL_OW 88
// Say ( OWChyba , w11 ) ;
3341: LD_EXP 6
3345: PPUSH
3346: LD_STRING w11
3348: PPUSH
3349: CALL_OW 88
// Say ( Nefarem , w12 ) ;
3353: LD_EXP 7
3357: PPUSH
3358: LD_STRING w12
3360: PPUSH
3361: CALL_OW 88
// SayRadio ( PULK_02 , w13 ) ;
3365: LD_EXP 8
3369: PPUSH
3370: LD_STRING w13
3372: PPUSH
3373: CALL_OW 94
// SayRadio ( OWChyba , w14 ) ;
3377: LD_EXP 6
3381: PPUSH
3382: LD_STRING w14
3384: PPUSH
3385: CALL_OW 94
// SayRadio ( PULK_02 , w15 ) ;
3389: LD_EXP 8
3393: PPUSH
3394: LD_STRING w15
3396: PPUSH
3397: CALL_OW 94
// SayRadio ( OWChyba , w16 ) ;
3401: LD_EXP 6
3405: PPUSH
3406: LD_STRING w16
3408: PPUSH
3409: CALL_OW 94
// Say ( Nefarem , w17 ) ;
3413: LD_EXP 7
3417: PPUSH
3418: LD_STRING w17
3420: PPUSH
3421: CALL_OW 88
// Say ( OWChyba , w18 ) ;
3425: LD_EXP 6
3429: PPUSH
3430: LD_STRING w18
3432: PPUSH
3433: CALL_OW 88
// Say ( Nefarem , w19 ) ;
3437: LD_EXP 7
3441: PPUSH
3442: LD_STRING w19
3444: PPUSH
3445: CALL_OW 88
// Say ( OWChyba , w20 ) ;
3449: LD_EXP 6
3453: PPUSH
3454: LD_STRING w20
3456: PPUSH
3457: CALL_OW 88
// AddComEnterUnit ( Nefarem , f1 ) ;
3461: LD_EXP 7
3465: PPUSH
3466: LD_INT 671
3468: PPUSH
3469: CALL_OW 180
// AddComEnterUnit ( OWChyba , f2 ) ;
3473: LD_EXP 6
3477: PPUSH
3478: LD_INT 642
3480: PPUSH
3481: CALL_OW 180
// AddComMoveToArea ( OWChyba , t1 ) ;
3485: LD_EXP 6
3489: PPUSH
3490: LD_INT 6
3492: PPUSH
3493: CALL_OW 173
// AddComMoveToArea ( Nefarem , WYJAZD ) ;
3497: LD_EXP 7
3501: PPUSH
3502: LD_INT 5
3504: PPUSH
3505: CALL_OW 173
// AddComMoveToArea ( OWChyba , t2 ) ;
3509: LD_EXP 6
3513: PPUSH
3514: LD_INT 7
3516: PPUSH
3517: CALL_OW 173
// AddComMoveToArea ( OWChyba , t3 ) ;
3521: LD_EXP 6
3525: PPUSH
3526: LD_INT 8
3528: PPUSH
3529: CALL_OW 173
// AddComMoveToArea ( OWChyba , t4 ) ;
3533: LD_EXP 6
3537: PPUSH
3538: LD_INT 9
3540: PPUSH
3541: CALL_OW 173
// AddComMoveToArea ( OWChyba , t5 ) ;
3545: LD_EXP 6
3549: PPUSH
3550: LD_INT 10
3552: PPUSH
3553: CALL_OW 173
// AddComMoveToArea ( OWChyba , t6 ) ;
3557: LD_EXP 6
3561: PPUSH
3562: LD_INT 11
3564: PPUSH
3565: CALL_OW 173
// AddComMoveToArea ( OWChyba , t7 ) ;
3569: LD_EXP 6
3573: PPUSH
3574: LD_INT 12
3576: PPUSH
3577: CALL_OW 173
// AddComMoveToArea ( OWChyba , t8 ) ;
3581: LD_EXP 6
3585: PPUSH
3586: LD_INT 13
3588: PPUSH
3589: CALL_OW 173
// AddComMoveToArea ( OWChyba , t9 ) ;
3593: LD_EXP 6
3597: PPUSH
3598: LD_INT 14
3600: PPUSH
3601: CALL_OW 173
// AddComMoveToArea ( OWChyba , t10 ) ;
3605: LD_EXP 6
3609: PPUSH
3610: LD_INT 15
3612: PPUSH
3613: CALL_OW 173
// AddComMoveToArea ( OWChyba , t11 ) ;
3617: LD_EXP 6
3621: PPUSH
3622: LD_INT 16
3624: PPUSH
3625: CALL_OW 173
// AddComMoveToArea ( OWChyba , SZYCHA2 ) ;
3629: LD_EXP 6
3633: PPUSH
3634: LD_INT 17
3636: PPUSH
3637: CALL_OW 173
// end ;
3641: END
// every 0 0$01 trigger IsInArea ( OWChyba , SZYCHA2 ) do
3642: LD_EXP 6
3646: PPUSH
3647: LD_INT 17
3649: PPUSH
3650: CALL_OW 308
3654: IFFALSE 3687
3656: GO 3658
3658: DISABLE
// begin ; AddComExitVehicle ( OWChyba ) ;
3659: LD_EXP 6
3663: PPUSH
3664: CALL_OW 181
// wait ( 0 0$01 ) ;
3668: LD_INT 35
3670: PPUSH
3671: CALL_OW 67
// AddComMoveToArea ( OWChyba , SZYCHA3 ) ;
3675: LD_EXP 6
3679: PPUSH
3680: LD_INT 18
3682: PPUSH
3683: CALL_OW 173
// end ;
3687: END
// every 0 0$01 trigger IsInArea ( OWChyba , SZYCHA3 ) do
3688: LD_EXP 6
3692: PPUSH
3693: LD_INT 18
3695: PPUSH
3696: CALL_OW 308
3700: IFFALSE 3971
3702: GO 3704
3704: DISABLE
// begin ; InGameOn ;
3705: CALL_OW 8
// Center = 1 ;
3709: LD_ADDR_EXP 9
3713: PUSH
3714: LD_INT 1
3716: ST_TO_ADDR
// ComTurnUnit ( OWChyba , PULK_02 ) ;
3717: LD_EXP 6
3721: PPUSH
3722: LD_EXP 8
3726: PPUSH
3727: CALL_OW 119
// ComTurnUnit ( PULK_02 , OWChyba ) ;
3731: LD_EXP 8
3735: PPUSH
3736: LD_EXP 6
3740: PPUSH
3741: CALL_OW 119
// Say ( OWChyba , w23 ) ;
3745: LD_EXP 6
3749: PPUSH
3750: LD_STRING w23
3752: PPUSH
3753: CALL_OW 88
// Say ( PULK_02 , w24 ) ;
3757: LD_EXP 8
3761: PPUSH
3762: LD_STRING w24
3764: PPUSH
3765: CALL_OW 88
// Say ( OWChyba , w25 ) ;
3769: LD_EXP 6
3773: PPUSH
3774: LD_STRING w25
3776: PPUSH
3777: CALL_OW 88
// Say ( PULK_02 , w26 ) ;
3781: LD_EXP 8
3785: PPUSH
3786: LD_STRING w26
3788: PPUSH
3789: CALL_OW 88
// Say ( PULK_02 , w27 ) ;
3793: LD_EXP 8
3797: PPUSH
3798: LD_STRING w27
3800: PPUSH
3801: CALL_OW 88
// Say ( OWChyba , w28 ) ;
3805: LD_EXP 6
3809: PPUSH
3810: LD_STRING w28
3812: PPUSH
3813: CALL_OW 88
// Say ( PULK_02 , w29 ) ;
3817: LD_EXP 8
3821: PPUSH
3822: LD_STRING w29
3824: PPUSH
3825: CALL_OW 88
// Say ( OWChyba , w30 ) ;
3829: LD_EXP 6
3833: PPUSH
3834: LD_STRING w30
3836: PPUSH
3837: CALL_OW 88
// Say ( PULK_02 , w31 ) ;
3841: LD_EXP 8
3845: PPUSH
3846: LD_STRING w31
3848: PPUSH
3849: CALL_OW 88
// Say ( OWChyba , w32 ) ;
3853: LD_EXP 6
3857: PPUSH
3858: LD_STRING w32
3860: PPUSH
3861: CALL_OW 88
// Say ( PULK_02 , w33 ) ;
3865: LD_EXP 8
3869: PPUSH
3870: LD_STRING w33
3872: PPUSH
3873: CALL_OW 88
// Say ( OWChyba , w34 ) ;
3877: LD_EXP 6
3881: PPUSH
3882: LD_STRING w34
3884: PPUSH
3885: CALL_OW 88
// Say ( PULK_02 , w35 ) ;
3889: LD_EXP 8
3893: PPUSH
3894: LD_STRING w35
3896: PPUSH
3897: CALL_OW 88
// Say ( PULK_02 , w36 ) ;
3901: LD_EXP 8
3905: PPUSH
3906: LD_STRING w36
3908: PPUSH
3909: CALL_OW 88
// Say ( PULK_02 , w37 ) ;
3913: LD_EXP 8
3917: PPUSH
3918: LD_STRING w37
3920: PPUSH
3921: CALL_OW 88
// Say ( OWChyba , w38 ) ;
3925: LD_EXP 6
3929: PPUSH
3930: LD_STRING w38
3932: PPUSH
3933: CALL_OW 88
// SaveCharacters ( OWChyba , OWChyba ) ;
3937: LD_EXP 6
3941: PPUSH
3942: LD_STRING OWChyba
3944: PPUSH
3945: CALL_OW 38
// SaveCharacters ( PULK_02 , PULK_02 ) ;
3949: LD_EXP 8
3953: PPUSH
3954: LD_STRING PULK_02
3956: PPUSH
3957: CALL_OW 38
// ChangeMap ( 3 , %_cont ) ;
3961: LD_INT 3
3963: PPUSH
3964: LD_STRING %_cont
3966: PPUSH
3967: CALL_OW 340
// end ;
3971: END
